package org.regenstrief.linkage.gui;
import java.awt.event.ActionEvent;
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileWriter;
import java.io.IOException;
import javax.swing.JButton;
import javax.swing.JFileChooser;
import javax.swing.JOptionPane;
public class SaveTextLoggingFrame extends LoggingFrame {
JButton save;
public SaveTextLoggingFrame(String title){
super(title);
}
protected void initGUI(){
super.initGUI();
save = new JButton("Save Text to File");
save.addActionListener(this);
button_panel.add(save);
}
public void actionPerformed(ActionEvent ae){
if(ae.getSource() == save){
boolean success = saveFile();
if(!success){
JOptionPane.showMessageDialog(this,
"Error writing text to file",
"File error",
JOptionPane.ERROR_MESSAGE);
}
} else {
super.actionPerformed(ae);
}
}
protected boolean saveFile(){
JFileChooser jfc = new JFileChooser();
int ret = jfc.showSaveDialog(this);
if(ret == JFileChooser.APPROVE_OPTION){
try{
File f = jfc.getSelectedFile();
BufferedWriter out = new BufferedWriter(new FileWriter(f));
out.write(jta.getText());
out.flush();
out.close();
}
catch(IOException ioe){
System.err.println(ioe.getMessage());
return false;
}
}
return true;
}
}